package java_thinking.unit_11._11_13;

import java.util.Arrays;

/**
 * @Description : 验证数组不一定就是一个Iterable，并且自动包装机制也不会自动发生
 * @author: cww
 * @DateTime: 2019-03-19 20:54
 */

public class ArrayIsNotIterable {
    /**
     * static <T> 声明了一个类型为T的类,这个方法放到任意一个类中都不会报错
     * <T> 不是返回值，表示传入参数有泛型,是个泛型方法
     *泛型的声明，必须在方法的修饰符（public,static,final,abstract等）之后，返回值声明之前
     * @param it
     * @param <T>
     */
    static <T> void test(Iterable<T> it){
        for (T t:it){
            System.out.println(t);
        }
    }
    public static void main(String[] args){
        test(Arrays.asList(1,2,3));
        String[] str = {"A","B","c"};
        //数组并不是Iterable，编译无法通过,这说明不存在任何从数组到Iterable的自动转换，必须手工执行；
//        test(str);
        test(Arrays.asList(str));
    }
}
